package com.zlict.admin.service.impl;

import java.util.List;
import com.zlict.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zlict.admin.mapper.RdMaterialsMapper;
import com.zlict.admin.domain.RdMaterials;
import com.zlict.admin.service.IRdMaterialsService;

/**
 * 物料领用-材料Service业务层处理
 * 
 * @author ruoyi
 * @date 2025-06-18
 */
@Service
public class RdMaterialsServiceImpl implements IRdMaterialsService 
{
    @Autowired
    private RdMaterialsMapper rdMaterialsMapper;

    /**
     * 查询物料领用-材料
     * 
     * @param id 物料领用-材料主键
     * @return 物料领用-材料
     */
    @Override
    public RdMaterials selectRdMaterialsById(Long id)
    {
        return rdMaterialsMapper.selectRdMaterialsById(id);
    }

    /**
     * 查询物料领用-材料列表
     * 
     * @param rdMaterials 物料领用-材料
     * @return 物料领用-材料
     */
    @Override
    public List<RdMaterials> selectRdMaterialsList(RdMaterials rdMaterials)
    {
        return rdMaterialsMapper.selectRdMaterialsList(rdMaterials);
    }

    /**
     * 根据单据编号查询材料列表
     * 
     * @param receiptNumber 单据编号
     * @return 材料集合
     */
    @Override
    public List<RdMaterials> selectRdMaterialsByReceiptNumber(String receiptNumber)
    {
        return rdMaterialsMapper.selectRdMaterialsByReceiptNumber(receiptNumber);
    }

    /**
     * 新增物料领用-材料
     * 
     * @param rdMaterials 物料领用-材料
     * @return 结果
     */
    @Override
    public int insertRdMaterials(RdMaterials rdMaterials)
    {
        rdMaterials.setCreateTime(DateUtils.getNowDate());
        return rdMaterialsMapper.insertRdMaterials(rdMaterials);
    }

    /**
     * 修改物料领用-材料
     * 
     * @param rdMaterials 物料领用-材料
     * @return 结果
     */
    @Override
    public int updateRdMaterials(RdMaterials rdMaterials)
    {
        rdMaterials.setUpdateTime(DateUtils.getNowDate());
        return rdMaterialsMapper.updateRdMaterials(rdMaterials);
    }

    /**
     * 批量删除物料领用-材料
     * 
     * @param ids 需要删除的物料领用-材料主键
     * @return 结果
     */
    @Override
    public int deleteRdMaterialsByIds(Long[] ids)
    {
        return rdMaterialsMapper.deleteRdMaterialsByIds(ids);
    }

    /**
     * 删除物料领用-材料信息
     * 
     * @param id 物料领用-材料主键
     * @return 结果
     */
    @Override
    public int deleteRdMaterialsById(Long id)
    {
        return rdMaterialsMapper.deleteRdMaterialsById(id);
    }

    /**
     * 根据单据编号删除材料
     * 
     * @param receiptNumber 单据编号
     * @return 结果
     */
    @Override
    public int deleteRdMaterialsByReceiptNumber(String receiptNumber)
    {
        return rdMaterialsMapper.deleteRdMaterialsByReceiptNumber(receiptNumber);
    }
} 